Skip to content

fix(cli): Don't externalize braintrust package on push - #2477

Merged
Luca Forstner (lforst) merged 2 commits into
mainfrom
09-11-sdk-357-fix-js-push-sdk-externalization
Sep 14, 2026
Merged

fix(cli): Don't externalize braintrust package on push#2477
Luca Forstner (lforst) merged 2 commits into
mainfrom
09-11-sdk-357-fix-js-push-sdk-externalization

Conversation

@evanmkeith

Copy link
Copy Markdown
Contributor

Summary

Fixes the JS SDK CLI push bundle path so uploaded function bundles inline Braintrust SDK packages by default again.

The regression came from passing plugins: [] into buildOpts(), which still allowed the built-in known-package externalization plugin to mark braintrust, autoevals, and @braintrust/* external. Hosted function runtime then failed at load time with Cannot find module 'braintrust'.

This change disables only that known-package externalization plugin for final uploaded bundles, while keeping it enabled for local discovery builds.

Testing

  • cd js && pnpm vitest src/cli/auto-instrumentation.test.ts src/cli/util/external-packages-plugin.test.ts
  • ./node_modules/.bin/prettier --write js/src/cli/index.ts js/src/cli/auto-instrumentation.test.ts

Addresses: https://linear.app/braintrustdata/issue/SDK-357/js-sdk-braintrust-push-externalizes-braintrust-in-uploaded-bundles

## Summary
Fixes the JS SDK CLI push bundle path so uploaded function bundles inline Braintrust SDK packages by default again.

The regression came from passing `plugins: []` into `buildOpts()`, which still allowed the built-in known-package externalization plugin to mark `braintrust`, `autoevals`, and `@braintrust/*` external. Hosted function runtime then failed at load time with `Cannot find module 'braintrust'`.

This change disables only that known-package externalization plugin for final uploaded bundles, while keeping it enabled for local discovery builds.

  ## Testing

  - `cd js && pnpm vitest src/cli/auto-instrumentation.test.ts src/cli/util/external-packages-plugin.test.ts`
  - `./node_modules/.bin/prettier --write js/src/cli/index.ts js/src/cli/auto-instrumentation.test.ts`
@lforst Luca Forstner (lforst) changed the title Fix JS push bundles externalizing Braintrust SDK fix(cli): Don't externalize braintrust package on push Sep 14, 2026
@lforst
Luca Forstner (lforst) merged commit e51a966 into main Sep 14, 2026
47 checks passed
@lforst
Luca Forstner (lforst) deleted the 09-11-sdk-357-fix-js-push-sdk-externalization branch September 14, 2026 10:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants